package com.learn.micro_mall.domain.entity.goods;

import com.learn.micro_mall.domain.vo.goods.*;
import com.learn.micro_mall.service.request.goods.*;
import com.sun.istack.internal.NotNull;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class GoodsEntity {

    private GoodsId goodsId;

    /**
     * 品牌名
     */
    private String brandName;

    /**
     * 商品名
     */
    @NotNull
    private String goodsName;


    private GoodsCategoryRelationVO goodsCategoryVO;

    /**
     * sku创建列表
     */
    private List<GoodsSkuEntity> skuEntities;

    /**
     * 库存扣减配置
     */
    private StockReduceConfigVO stockReduceConfig;

    /**
     * 商品购买限制配置
     */
    private GoodsBuyLimitConfigVO goodsBuyLimitConfigDTO;

    /**
     * 退换货配置
     */
    private ExchangeAndRefundGoodsConfigVO exchangeAndRefundGoodsConfigDTO;

    /**
     * 会员相关配置
     */
    private MemberPriceConfigVO memberPriceConfigDTO;

    /**
     * 物流价格相关配置
     */
    private LogisticsConfigurationVO logisticsConfigurationDTO;
}
